In one approach to machine reading of human handwriting, the automatic symbol recognizer initially accepts any collection of classified symbols of arbitrary shape entered by the user. Thereafter, the reliability of recognition depends only on the variability of the user's own renditions of a particular symbol. However, a public symbol recognizer, which is trained to recognize the characters of a standard alphabet used by a large population of potential users, will generally be more useful than a private symbol recognizer trained only to recognize the idiosyncratic alphabet of one or a few individuals.
A public symbol recognizer, on the other hand, must deal with variations in the renditions of symbols over a large user population. The range of such variations will generally be much greater than that for a single individual.
One approach to this problem is to train the symbol recognizer using an exhaustive collection of training patterns that represents the full range of variability expected in the user population. This approach suffers from the disadvantages that the initial training set may be extremely large, and advance knowledge is required of the variations that are to be expected.
A second approach is to restrict variability by training the users to adhere to a standard. The training process may be as simple as a requirement for the user to form characters according to a fixed set of instructions, or as extensive as a regimen of memorization and practice. This approach is likely to be unattractive because of the demands that it places upon the user.
A third approach is to make the symbol recognizer do the learning. That is, the symbol recognizer can be made to observe the symbols written by the user, and to adapt its stored class prototypes to agree with the user's personal style. For example, one form of adaptation involves morphing, i.e., a procedure for continuously transforming any curve into any other curve. Each time the symbol recognizer correctly identifies a symbol, it shifts the corresponding prototype fractionally toward the user's version of the symbol along the morph path.
Such an adaptive symbol recognizer gradually grows more reliable, but also more dependent upon the user who is training it. When a new user is introduced, the symbol recognizer must start over with the standard, public version of the alphabet.
Practical symbol recognizers have generally combined two, or even all three, of these approaches. Additionally, the matching of an input symbol to a class prototype can be performed using any of a great number of different algorithms. Such algorithms may rely, for example, upon a direct comparison of shapes, or they may rely upon comparisons in parameter spaces of low or high complexity. Unfortunately, it has not yet proven feasible to emulate the extreme complexity of the process that the human brain uses for character recognition, and it has not been possible to duplicate the extreme accuracy of human perception in recognizing highly variable characters. A successful symbol recognizer will generally embody a tradeoff among algorithm complexity, amount of human learning required, and amount of machine learning required.
Such a tradeoff can be particularly favorable in a symbol recognizer that performs comparisons in a parameter space of moderate size, to achieve a basic level of accuracy using a public alphabet. In particular, such a symbol recognizer could readily serve as the front end for a symbol recognizer that achieves high long-term accuracy by further including a facility for machine adaptation.